package com.qlslylq.ad.sdk.net.api;

import com.qlslylq.ad.sdk.net.ResponseObject;
import com.qlslylq.ad.sdk.net.ResponseList;

import io.reactivex.Flowable;
import okhttp3.ResponseBody;
import retrofit2.http.Body;
import retrofit2.http.GET;
import retrofit2.http.POST;
import retrofit2.http.Path;
import retrofit2.http.Query;
import retrofit2.http.Streaming;
import retrofit2.http.Url;

/**
 * XX服务<br/>
 */
public interface CopyService {

    @GET("")
    Flowable<ResponseObject<Object>> get0(
            @Query("param") String param
    );

    @GET("/{param}")
    Flowable<ResponseObject<Object>> get1(
            @Path("param") String param
    );

    @POST("")
    Flowable<ResponseObject<Object>> get2(
            @Body Object req
    );

    @POST("")
    Flowable<ResponseList<Object>> get3(
            @Body Object req
    );

    @Streaming
    @GET
    Flowable<ResponseBody> downloadFile(@Url String fileUrl);

}